# -*- encoding:UTF-8 -*-
import logging
import cherrypy
import turbogears
from turbogears import controllers, expose, validate, redirect
from chamachama import json, model

from chamados import Chamados
from util import Validacao

log = logging.getLogger( "chamachama.controllers" )

class Root( controllers.RootController ):
    # Subdivisões do sistema:
    chamados = Chamados()

    @expose(template="chamachama.templates.formLogin")
    def formLogin( self ):
        """
        Index do sistema. Página principal, verifica se o usuário já logou,
        caso sim, manda-o para a parte de chamados, senão oferece o formulário
        para que ele se logue.
        """
        # Checando se os cookies foram setados:
        try:
            if Validacao.validarLogin():
                redirect( "./chamados/" )
            else:
                return dict( )
        except:
            return dict( )
    
    @expose(template="chamachama.templates.login")
    def login( self, nome, senha ):
        """
        página que faz a mágica, verifica o login do usuário e a senha 
        dele e redireciona para a página de chamados caso tenha êxito
        na verificação. O status como logado fica na sessão do usuário. q
        """
        try:
            usuario = model.Usuario.select( model.Usuario.q.nome==nome )[0]
        except:
            redirect( "./" )
        
        if usuario.senha == senha:
            cherrypy.session[ 'logado' ] = 1
            cherrypy.session[ 'nomeUsuario' ] = nome
            redirect( "./chamados/" )
        else:
            redirect( "./" )

    index = formLogin